package com.geeguo.ebuilder.operation.business.system.webmodule.model;

import com.geeguo.ebuilder.core.common.model.converter.DateLongMapper;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

@Mapper(uses = DateLongMapper.class)
public interface WebModuleConverter {

    WebModuleConverter INSTANCE = Mappers.getMapper(WebModuleConverter.class);

    WebModuleCO convert2CO(WebModuleVO vo);

    WebModuleVO convert2VO(WebModuleEntity entity);

    WebModuleEntity convert2Entity(WebModuleVO vo);
    WebModuleEntity convert2Entity(WebModuleCreateDTO dto);
    WebModuleEntity convert2Entity(WebModuleUpdateDTO dto);

    List<WebModuleVO> convertCOList2VOList(List<WebModuleCO> list);
    List<WebModuleCO> convertVOList2COList(List<WebModuleVO> list);
    List<WebModuleVO> convertEntityList2VOList(List<WebModuleEntity> list);
}